1. Field of the Invention
This invention relates to computer output display systems and, more particularly, to methods and apparatus for converting data stored in twenty-four bits per pixel color format into a fifteen bit per pixel color format for storage for display.
2. History of the Prior Art
A typical computer system generates data which is displayed on an output display. This output display is typically a cathode ray tube which produces a number of full screen images one after another so rapidly that to the eye of the viewer the screen appears to display constant motion when a program being displayed produces such motion. In order to produce the individual images (frames) which are displayed one after another, data is written into a frame buffer memory or other similar memory. The frame buffer stores information about each position on the display which can be illuminated (each pixel) to produce the full screen image. For example, a display may be capable of displaying pixels in approximately six hundred horizontal rows each having approximately eight hundred pixels. All of this information in each frame is written to the frame buffer before it is scanned to the display.
In computer systems which display color images, each pixel to be displayed is represented by a number of bits of binary information which define the color of that pixel. In the more advanced systems which handle thirty-two bit words using thirty-two bit registers and buses, twenty-four bits are used to define the color of each pixel, eight bits each to represent the red, green, and blue component values which are combined to produce the final color. Typically, each pixel is stored in one thirty-two bit word space, and the extra eight bits are used for some other purpose or ignored. The memory space required in a frame buffer to store twenty-four bit color where 800 by 600 pixels are to appear in each frame is almost two megabytes. This amount of memory is very expensive, and attempts have been made to reduce it without detracting from the color representation.
One way in which the cost of memory can be reduced is to use a smaller number of bits to represent the color. For example, if five bits are used to represent each of the red, green, and blue components of the color of each pixel, then only fifteen bits are used in total. This easily fits into a sixteen bit half-word length with a single bit left over. Using sixteen bits to store each pixel effectively reduces the size of memory necessary for a frame buffer for any given display size in half. This is a substantial savings. However, for any of a number of reasons, it would be a step back in the computer art to reduce the word size used by the computer system itself. To do so would reduce the ability the computer and is undesirable. Therefore, only the frame buffer memory or other memory used to store display data should be limited to sixteen bit values.
The reduction in the size of the frame buffer memory requires a translation of the pixel color data from a twenty-four bit per pixel representation to a fifteen bit per pixel representation before the data is placed in the frame buffer. The most important question involved in such a reduction in memory size is how to accomplish the reduction while retaining the color authenticity produced by the larger number of bits. The present invention is directed to the solution of this problem.